1. Field
This disclosure relates generally to an adaptive filter and, more specifically, to techniques for updating filter coefficients of an adaptive filter.
2. Related Art
Echo cancellation is used in communication systems to remove echo from a voice communication in order to improve voice quality. Echo cancellation involves first recognizing an originally transmitted signal that re-appears, with some delay and linear modification, in a transmitted or received signal. More particularly, a signal affected by the phenomenon of echo produced by the presence of a hybrid circuit and/or acoustical coupling between a mouth-piece and an ear-piece is the signal travelling from the near-end to the far-end. If the point of reference is the near-end part of the connection, then the signal affected corresponds to the transmitted signal. If the point of reference is the far-end part of the connection, then the signal affected corresponds to the received signal. Upon recognition, an echo can be removed by subtracting the echo from a transmitted or received signal. Echo cancellation can be implemented using a digital signal processor (DSP).
Two primary sources of echo in telephony are acoustic echo and hybrid echo. Acoustic echo arises when sound from a speaker of a telephone handset is picked up by a microphone of the telephone handset. For example, acoustic echo may occur in conjunction with hands-free car phone systems, a standard telephone in speakerphone or hands-free mode, conference telephones, installed room systems that use ceiling speakers and table-top microphones, video conferencing systems, etc. Direct acoustic path echo is attributable to sound from a speaker of a handset that enters a microphone of the handset substantially unaltered. When indirect acoustic path echo (reverberation) occurs, the echo can be difficult to effectively cancel (unlike echo associated with a direct acoustic path) as the original sound is altered by ambient space. The altered echo may be attributed to certain frequencies being absorbed by soft furnishings and reflection of different frequencies at varying strength.
Acoustic echo cancellers are usually designed to deal with changes and additions to an original signal caused by imperfections of a speaker, imperfections of a microphone, reverberant space, and physical coupling. In general, acoustic echo cancellation (AEC) algorithms approximate results of a next sample by comparing the difference between current and one or more previous samples. The information has then been used to predict how sound is altered by an acoustic space. In this case, the model of the acoustic space is continually updated. The changing nature of a sampled signal is mainly due to changes in the acoustic environment, not changes in the characteristics of a loudspeaker, a microphone, or physical coupling. That is, changes in a sampled signal are usually attributable to objects moving in an acoustic environment and movement of a microphone within the environment. For example, when a door is closed or opened, a chair is pulled in closer to a table, or drapes are opened or closed a change in reverberation of sound in an acoustic space occurs. To address changes in acoustic space, an echo cancellation algorithm may employ non-linear processing (NLP), which allows an algorithm to make changes to an acoustic space model that are suggested (but not yet confirmed) by signal comparison.
Hybrid (electric) echo is generated in public switched telephone networks (PSTNs) or in packet networks as a result of the reflection of electrical energy by a hybrid circuit. Hybrid echo may also be generated in voice-over-packet network systems, if the systems contain network elements (such as access gateways) that are equipped with access loop interfaces. As is known, most telephone local loops are two-wire circuits, while transmission facilities are usually four-wire circuits. A hybrid circuit or hybrid (typically, a part of an electronic device called a subscriber line interface circuit (SLIC)) converts a signal between the two-wire and four-wire circuits. Unfortunately, when an impedance mismatch occurs, a hybrid produces a hybrid echo signal. An adaptive filter (included in a line echo canceller or a network echo canceller) learns about characteristics of the hybrid during an adaptation process. The output signal from the adaptive filter is inverted and combined with the hybrid echo signal. When the adaptation process is performed correctly, the result of combination of the hybrid echo signal and the inverted output signal of the adaptive filter produces a very small signal (called an error signal). Ideally, the error signal is small such that the error signal is not perceived audibly.
An adaptive filter is a filter that self-adjusts its transfer function according to an optimizing algorithm. Due to the complexity of most optimizing algorithms, adaptive filters are usually implemented as digital filters using DSPs, which modify their filter coefficients based on an input signal. As the power of DSPs has increased, adaptive filters have become more common and are now routinely used in various devices, e.g., echo cancellers, mobile phones and other communication devices, camcorders and digital cameras, and medical monitoring equipment.
A relatively long adaptive filter is required for some line connections and/or access system configurations in order to cancel echo adequately. In general, long adaptive filters have a relatively high computational cost and are slow to converge. However, when a pure delay estimator is employed in conjunction with an adaptive filter, a shorter adaptive filter can usually be employed to model an active portion of a network echo path impulse response. In practice, the adaptation process usually never produces an ideal characteristic of the hybrid and the error signal is often so large that other approaches for reducing the error signal are needed. As mentioned above, a typical method of reducing the energy of the error signal is based on NLP.